package HashMapSeries;

import java.util.HashMap;
import java.util.Map;

public class FourSumCountSolution_454 {
    public int fourSumCount(int[] nums1, int[] nums2, int[] nums3, int[] nums4) {
        // 设计一个hashMap key=a+b的值  value=值出现的次数
        Map<Integer, Integer> record = new HashMap<>();
        int count = 0;

        for (int i : nums1) {
            for (int j : nums2) {
                int sum = i + j;
                // map.getOrDefault(sum, 0) -- 若出现过sum，则得到sum对应的value，否则0
                record.put(sum, record.getOrDefault(sum, 0) + 1);
            }
        }

        for (int i : nums3) {
            for (int j : nums4) {
                int balance = i + j;
                count += record.getOrDefault(-balance, 0);
            }
        }
        return count;
    }
}
